package org.example.classtopia.Service;

import org.example.classtopia.Model.dto.AiSessionCreateDTO;
import org.example.classtopia.Model.dto.AiSessionUpdateDTO;
import org.example.classtopia.Model.Entity.AiChatSession;
import org.example.classtopia.Model.vo.AiSessionVO;
import org.example.classtopia.Model.vo.AiSessionListVO;
import org.example.classtopia.Common.Result.Result;

/**
 * AI聊天会话服务接口
 */
public interface AiChatService {
    /**
     * 创建会话
     */
    Result<AiSessionVO> createSession(AiSessionCreateDTO dto);

    /**
     * 获取会话详情
     */
    Result<AiSessionVO> getSessionById(String id);

    /**
     * 获取会话列表
     */
    Result<AiSessionListVO> getAllSessions(int page, int size);

    /**
     * 更新会话
     */
    Result<Void> updateSession(AiSessionUpdateDTO dto);

    /**
     * 删除会话
     */
    Result<Void> deleteSessionById(String id);
}
